#region Using directives
using System;
#endregion

namespace SharpWind.Resources
{
	public abstract class Resource : IDisposable
	{
		#region Fields

		protected string name = string.Empty;

		#endregion

		#region Methods

		public void Dispose()
		{
			Dispose( true );
			GC.SuppressFinalize( this );
		}

		protected virtual void Dispose( bool disposing )
		{

		}

		internal abstract bool Load( string name );

		#endregion

		#region Properties

		public string Name 
		{
			get
			{
				return this.name;
			}
		}

		#endregion
	}
}
